iT邦幫忙

2023 iThome 鐵人賽

DAY 27
0
自我挑戰組

前端開發 | 學習歷程系列 第 27

DAY 27 - 迴圈和迭代 (下)

  • 分享至 

  • xImage
  •  

大家好,我是一名菜鳥工程師,Chris,今天來到第 27 天,JS 的迴圈和迭代(下)

iteration(迭代)是一種重複執行相同的程序性操作,通常會用在陣列、物件、字串或其他可迭代物件上

迭代通常處理集合中的每個元素,以執行特定的操作,可迭代對象包括陣列、字串、Set、Map

以下是有關 JavaScript 迭代器的詳細說明

1 可迭代對象(Iterable Objects):

  • 具有迭代特性的對象,它們使用Symbol.iterator方法
  • 這個方法返回一個迭代器對象,它具有next方法,此方法可以控制迭代的過程

2 迭代器對象(Iterator Objects):

  • 迭代器對象是具有next方法的對象,用於控制迭代過程
  • next方法返回一個包含valuedone屬性的物件
    • value:表示當前迭代的值
    • done:表示迭代是否已經完成。當迭代完成時為true,否則為false

3 使用for...of迴圈:

  • for...of是一個用於可迭代對象的迴圈
  • 它自動處理迭代過程,不需要你自己管理迭代器

4 自訂迭代器:

  • 可以在自定義對象上實現迭代器,以控制自定義的迭代邏輯
  • 自訂迭代器應該會有Symbol.iterator方法,返回包含next方法的物件
  • next方法應根據自訂邏輯返回值和完成狀態
  • 以下是範例
const myArray = [1, 2, 3, 4, 5];

const iterator = myArray[Symbol.iterator]();

let result = iterator.next();

while (!result.done) {
  console.log(result.value);
  result = iterator.next();
}

我建立一個陣列的迭代器,接著使用while迴圈陣列的元素。通常我們會使用for...of迴圈,能夠方便處理可迭代的對象

★總結 : 以上就是關於迴圈和迭代(下)的說明

今天就介紹到這邊,那我們明天見囉~~

明天預計內容:git !!!


上一篇
DAY 26 - 迴圈和迭代 (上)
下一篇
DAY - 28 JS 相關工具
系列文
前端開發 | 學習歷程30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言